home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 41
/
Aminet 41 (2001)(Schatztruhe)[!][Feb 2001].iso
/
Aminet
/
gfx
/
edit
/
AmiCAD_2.07.lha
/
AmiCAD
/
ARexx
/
MapKey.AmiCAD
< prev
next >
Wrap
Text File
|
2000-11-10
|
2KB
|
58 lines
/* MapKey
Programmation d'une séquence de touches
Version 1.00: 25 septembre 1999
Version 1.01: 10 novembre 2000 (localisation anglais/français)
$VER: MapKey.AmiCAD 1.01 (® R.Florac, 10/11/2000) */
options results /* indispensable pour récupérer le résultat des macros */
signal on error /* pour l'interception des erreurs */
signal on syntax
'LANGUAGE'
if result="français.language" then fr=1
else fr=0
'VERSION(0)'
if result < 2.03 then do
if fr=1 then 'MESSAGE("Ce script nécessite"+CHR(10)+"AmiCAD version 2.03"+CHR(10)+"ou plus")'
else 'MESSAGE("This script needs"+CHR(10)+"AmiCAD version 2.03+")'
exit
end
keys=getclip(key_sequence)
if key~="" then keys=doublage_guillemets(keys)
if fr=1 then 'INIT(KEY_SEQ,KEY_MACRO):KEY_SEQ=ASKTEXT("Séquence de touches"+CHR(10)+"à programmer ?"+CHR(10)+"Ex: shift-alt-f","'keys'")'
else 'INIT(KEY_SEQ,KEY_MACRO):KEY_SEQ=ASKTEXT("Keys sequence"+CHR(10)+"to program ?"+CHR(10)+"Ex: shift-alt-f","'keys'")'
key=result
if key~="" then do
setclip(key_sequence,key)
if fr=1 then 'KEY_MACRO=ASKTEXT("Macro associée à "+KEY_SEQ,READMAP(KEY_SEQ))'
else 'KEY_MACRO=ASKTEXT("Associated macro for "+KEY_SEQ,READMAP(KEY_SEQ))'
if result~="" then 'MAP(KEY_SEQ,KEY_MACRO)'
end
exit
doublage_guillemets: procedure
parse arg chaine
t=''
do i=1 to length(chaine)
c = substr(chaine,i,1)
if c='"' then c=c||'"'
t=t||c
end
return t
/* Traitement des erreurs, interruption du programme */
syntax:
erreur=RC
if fr=1 then 'MESSAGE("Script MapKey.AmiCAD"+CHR(10)+"Erreur de syntaxe"+CHR(10)+"en ligne 'SIGL'"+CHR(10)+"'errortext(erreur)'")'
else 'MESSAGE("MapKey.AmiCAD script"+CHR(10)+"Syntax error"+CHR(10)+"in line 'SIGL'"+CHR(10)+"'errortext(erreur)'")'
exit
error:
if fr=1 then 'MESSAGE("Script MapKey.AmiCAD"+CHR(10)+"Erreur en ligne 'SIGL'")'
else 'MESSAGE("MapKey.AmiCAD script"+CHR(10)+"Error in line 'SIGL'")'
exit